//
// Created by DengLibin on 2018/12/16 0016.
//
/**
 * 斐波那契数列:
 *  斐波那契数列（Fibonacci sequence），又称黄金分割数列、因数学家列昂纳多·斐波那契（Leonardoda Fibonacci）以兔子繁殖为例子而引入，
 *  故又称为“兔子数列”，指的是这样一个数列：1、1、2、3、5、8、13、21、34、……在数学上，
 *  斐波纳契数列以如下被以递推的方法定义：F(1)=1，F(2)=1, F(n)=F(n-1)+F(n-2)（n>=3，n∈N*）
 *  在现代物理、准晶体结构、化学等领域，斐波纳契数列都有直接的应用，为此，
 *  美国数学会从1963年起出版了以《斐波纳契数列季刊》为名的一份数学杂志，用于专门刊载这方面的研究成果。
 */
#include <iostream>
using namespace std;


//递归实现
int fibonacci_fun(int n)
{
    if (n < 2)
    {
        return n == 0 ? 0 : 1;
    }
    return fibonacci_fun(n - 1) + fibonacci_fun(n - 2);
}
//循环实现

int fibonacci_fun2(int n)
{
    if (n < 2)
    {
        return n == 0 ? 0 : 1;
    }
    int a=0, b=1, c;
    for (int i = 2; i <= n; i++)
    {
        c = a + b;
        a = b;
        b = c;
        cout << c << ",";
    }
    cout << endl;
    return c;
}

int main37(int argc, char* argv[])
{
    int a = fibonacci_fun(8);
    cout << a << endl;
    return 0;
}

